package com.ruoyi.movie.service.impl;

import java.util.List;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.ruoyi.movie.mapper.PubDateMapper;
import com.ruoyi.movie.domain.PubDate;
import com.ruoyi.movie.service.IPubDateService;

/**
 * 发行日期Service业务层处理
 *
 * @author ruoyi
 * @date 2025-10-28
 */
@Service
public class PubDateServiceImpl implements IPubDateService
{
    @Autowired
    private PubDateMapper pubDateMapper;

    /**
     * 查询发行日期
     *
     * @param pubDateId 发行日期主键
     * @return 发行日期
     */
    @Override
    public PubDate selectPubDateByPubDateId(Integer pubDateId)
    {
        return pubDateMapper.selectPubDateByPubDateId(pubDateId);
    }

    /**
     * 查询发行日期列表
     *
     * @param pubDate 发行日期
     * @return 发行日期
     */
    @Override
    public List<PubDate> selectPubDateList(PubDate pubDate)
    {
        return pubDateMapper.selectPubDateList(pubDate);
    }

    /**
     * 新增发行日期
     *
     * @param pubDate 发行日期
     * @return 结果
     */
    @Override
    public int insertPubDate(PubDate pubDate)
    {
        return pubDateMapper.insertPubDate(pubDate);
    }

    /**
     * 修改发行日期
     *
     * @param pubDate 发行日期
     * @return 结果
     */
    @Override
    public int updatePubDate(PubDate pubDate)
    {
        return pubDateMapper.updatePubDate(pubDate);
    }

    /**
     * 批量删除发行日期
     *
     * @param pubDateIds 需要删除的发行日期主键
     * @return 结果
     */
    @Override
    public int deletePubDateByPubDateIds(Integer[] pubDateIds)
    {
        return pubDateMapper.deletePubDateByPubDateIds(pubDateIds);
    }

    /**
     * 删除发行日期信息
     *
     * @param pubDateId 发行日期主键
     * @return 结果
     */
    @Override
    public int deletePubDateByPubDateId(Integer pubDateId)
    {
        return pubDateMapper.deletePubDateByPubDateId(pubDateId);
    }

    /**
     * 根据电影ID删除发行日期
     *
     * @param movieId 电影ID
     * @return 结果
     */
    @Override
    public int deletePubDateByMovieId(Integer movieId)
    {
        return pubDateMapper.deletePubDateByMovieId(movieId);
    }

    /**
     * 根据电影ID查询发行日期列表
     *
     * @param movieId 电影ID
     * @return 发行日期集合
     */
    @Override
    public List<PubDate> selectPubDateListByMovieId(Integer movieId)
    {
        return pubDateMapper.selectPubDateListByMovieId(movieId);
    }
}
